A document is, roughly, a combination of textual and graphical elements that are rendered together. Two ways of rendering a document are printing it or displaying it on a display device such as a computer monitor. In professional settings, documents often have versions. Different versions of a document can arise from editing or correcting it over time. Different versions of a document can also arise by changing the content to focus on different audiences. For example, one version of a document can be intended for an English speaking audience while a different version is intended for a Spanish speaking audience. Versions intended for different audiences are concurrently valid while versions arising from editing over time are sequentially valid.
Concurrently valid documents versions are difficult to track and maintain. Originally, every version was treated individually. Changing one version often resulted in laboriously making a related change to every other version. For example, if every version contained the same watermark, then changing the watermark entailed changing it for every version.
Layering is a technique that eases the process of making similar changes to many concurrent document versions. Returning to the example above, the different versions can all share a common watermark layer while each version has a unique text layer. The English version has an English text layer while the Spanish version has a Spanish text layer. A version of the document can be produced by rendering the common layer and a unique text layer. Some documents have many common layers and unique layers.
FIG. 5, labeled as “prior art”, illustrates rendering a document 501 with multiple concurrent versions. The document 501 has four layers. The first layer is for languages 503 such as an English layer 403, Spanish layer 404, and a Mandarin layer 405. The second layer is for products 504 such as a football layer 407, soccer layer 408, and a volleyball layer 409. The third layer is for pictures 506 such as a beach layer 411, mountains layer 412, and a crowd layer 413. The watermark layer 425 is a common layer. A document specification 416 calls for English, soccer, and crowd. Layering 502 is a task, often performed manually, that generates information that a rendering device 422 uses to produce an English, soccer, crowd document. The document also contains the common watermark layer 425.
To generate a different version of the document, a person must create another document specification and layer it before the rendering device can produce the document. As such, minor changes to a single layer can cause changes in a number of document versions. The new versions must be checked for errors and, hopefully produced in quantity. Specifying and printing out all the required new versions can be tedious, time consuming, and error prone. Systems and methods to address the shortcomings of current solutions are needed.